import 'package:get/get.dart';
import 'package:safetymonitor/app/core/core.dart';

///在线离线设备
class OnOfflineDeviceController extends GetxController with GetSingleTickerProviderStateMixin {
  /// 创建 TabController，设置 tab 数量
  late TabController tabController;

  @override
  void onInit() {
    super.onInit();
    // 初始化 TabController，length 是 tab 的数量，vsync 是 TickerProvider
    tabController = TabController(length: 2, vsync: this);
    _goToTab(Get.arguments['index'] as int);
  }
 @override
  void onClose() {
   // 在不需要时销毁 TabController
   tabController.dispose();
    super.onClose();
  }

  /// isSmooth  是否平滑
  /// animateTo 方法：animateTo 方法会平滑地跳转到指定的标签页，
  /// 如果你希望立即跳转而没有动画效果，可以使用 index 直接设置，例如 tabController.index = 1。
  void _goToTab(int index,{bool isSmooth= true}) {
    if(isSmooth){
      //不平滑
      tabController.index = Get.arguments['index'] as int;
    }else{
     // 平滑
      tabController.animateTo(index);
    }

  }
}
